Chapter 1 - Introduction to QuickDraw GX
This chapter introduces the QuickDraw GX object-based approach to graphics programming. Any QuickDraw GX programming you do requires a basic understanding of objects and how to manipulate them. Read this chapter before reading any other chapter in this book, and before reading subsequent books in the QuickDraw GX suite, such as Inside Macintosh: QuickDraw GX Graphics, Inside Macintosh: QuickDraw GX Typography, and Inside Macintosh: QuickDraw GX Printing.You can also start learning about QuickDraw GX by reading the book QuickDraw GX Programmer's Overview, either before or in conjunction with reading this chapter and the rest of the QuickDraw GX suite. QuickDraw GX Programmer's Overview introduces you to QuickDraw GX concepts through designing and building code samples.
This chapter starts by outlining the features and advantages of QuickDraw GX. It then describes
The chapter concludes with a table and diagram summarizing QuickDraw GX objects and their properties.
- the kinds of objects defined by QuickDraw GX
- how your application interacts with QuickDraw GX memory
- how to use objects to draw and hit-test shapes
- how to use objects to print documents
- how to program within the QuickDraw GX environment
Chapter Contents
- What Is QuickDraw GX?
- Color Graphics
- Typography
- Printing
- What QuickDraw GX Is Not
- QuickDraw GX Objects
- How QuickDraw GX Defines Objects
- Advantages of an Object-Based Structure
- Kinds of QuickDraw GX Objects
- Shape Objects
- Graphic Shapes
- Typographic Shapes
- Supporting Objects
- Style Object
- Ink Object
- Transform Object
- Color Set Object and Color Profile Object
- View Port Object, View Device Object, and View Group Object
- Tag Object
- Font Object
- Graphics Client Object
- Printing Objects
- Job Object, Format Object, and Paper-Type Object
- Collection Objects
- Printer Object
- Print-File Object
- Object Properties
- References
- Attributes
- Owner Count
- Tag List
- Default Objects and Default Properties
- Adding Custom Behavior With Tag Objects
- Objects and Memory
- Application Memory and QuickDraw GX Memory
- Sharing and Multiple Object References
- Owner Count
- Cloning
- Automatic Loading and Unloading of Objects
- Direct Access to Object Structure: Locking and Unlocking
- External Storage of Objects: Flattening and Unflattening
- Drawing and Hit-Testing Shapes
- Drawing
- Mapping and Clipping
- View-Related Objects
- The Drawing Sequence: Coordinate Conversion
- QuickDraw GX Coordinates
- Geometry Space
- Geometry Space to Local Space
- Local Space to Global Space
- Global Space to Device Space
- Hit-Testing
- Printing With QuickDraw GX
- Core Printing Features
- Custom Dialog Boxes and Page Formats
- Advanced Printing Features
- The QuickDraw GX Programming Environment
- Setting Up QuickDraw GX Memory
- Handling Errors
- Debugging
- Debugging and Non-Debugging Versions
- Debugging With GraphicsBug
- Programming Conventions and Consistencies
- Object Behavior
- Functions and Function Results
- Function Parameters
- Code Naming Conventions
- Relationship to the Macintosh Toolbox
- Summary Table and Diagram of QuickDraw GX Objects